package main

import "fmt"

/**
  匿名函数使用方式 1
  在定义匿名函数时就直接调用，这种方式匿名函数只能调用一次。
*/
func main() {
	//匿名函数没有名称，可以直接在函数结尾设置传入的参数值，如下方式会将(1,3)作为参数直接执行函数
	res := func(num1 int, num2 int) int {
		return num1 + num2
	}(1, 3)
	fmt.Println(res)

	//将匿名函数赋给一个变量(函数变量)，再通过该变量来调用匿名函数
	sub := func(num1 int, num2 int) int {
		return num1 - num2
	}
	//函数变量方式，可以多次使用
	fmt.Println(sub(10, 4))
	fmt.Println(sub(10, 2))
}
